As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
Information handling systems are often configured as servers. Such information handling systems are typically provided with server management functions that allow for server updates for firmware, BIOS, driver upgrades, server configuration, operating system deployment program for installation of the operating system on the server; and diagnostic functions to monitor the health status of the server. Programming for server management functions are typically loaded onto embedded flash memory of a server embedded remote access controller, such as an integrated Dell Remote Access Controller (iDRAC) available from Dell Products L.P. of Round Rock, Tex. A graphical user interface (GUI) may be provided to allow a user to control loading of server management functions as an image from the flash memory device which is embedded in the motherboard of the system.
Extension of server management functions (e.g., to change the properties of the server graphic user interface (“GUI”), to add support for additional operating systems in the OS deployment, or to add support for additional servers (original equipment manufacturer “OEM servers”) in a typical conventional server may be attempted but is complicated by the following factors. In a typical server, remote access controller flash memory device resources are limited (e.g., having an entire storage capacity of 1 gigabyte), and the amount of memory that is allocated for system management application is also typically limited (e.g., about 20 megabytes). The remote access controller flash memory device is typically managed by the remote access controller sub-system and is not open to the host system. System management functions run under a unified extensible firmware interface (“UEFI”) environment (which is provided by the BIOS firmware), and the infrastructure functions and library are enclosed. An extended understanding and knowledge of the current server management architecture and design are required due to the complexity of the component interfaces, which include remote access controller subsystem, BIOS firmware, device driver installation, etc.